package cc.rengu.igas.momp.common.enums;

/**
 * 操作类型枚举值
 *
 * @author Jinan Liu
 * @date 2020/4/1 11:11
 */
public enum OprTypeEnum {
    /**
     * 修改-0-保存
     */
    EDIT_SAVE("0", "保存"),
    /**
     * 修改-1-提交审批
     */
    EDIT_SUBMIT("1", "提交审批"),
    /**
     * 修改-2-修改草稿(临时表)
     */
    EDIT_DRAFT("2", "修改草稿(临时表)"),
    /**
     * 管理-0-删除草稿(临时表)
     */
    AUDIT_DELETE("0", "删除草稿(临时表)"),
    /**
     * 管理-1-审批通过(临时表)
     */
    AUDIT_PASSED("1", "审批通过(临时表)"),
    /**
     * 管理-2-审批拒绝(临时表)
     */
    AUDIT_REFUSED("2", "审批拒绝(临时表)"),
    /**
     * 发布-0-发布活动
     */
    PUBLISH_PASSED("0", "发布活动"),
    /**
     * 发布-1-退回修改
     */
    PUBLISH_REFUSED("1", "退回修改"),
    /**
     * 发布-2-启用活动
     */
    ENABLE("2", "启用活动"),
    /**
     * 发布-3-暂停活动
     */
    PAUSE("3", "暂停活动"),
    /**
     * 发布-4-强制终止活动
     */
    FORCE_DISABLE("4", "强制终止活动"),
    /**
     * 发布-5-打款成功后通知
     */
    FORCE_PAYMENT_NOTIFY("5", "打款成功后通知"),
    /**
     * I-新增
     */
    INSERT("I", "新增"),
    /**
     * U-修改
     */
    UPDATEE("U", "修改"),
    /**
     * D-删除
     */
    DELETE("D", "删除"),
    /**
     * Q-查询
     */
    QUERY("Q", "查询"),
    /**
     * 商户营销活动管理-3-删除活动
     */
    MANAGE_DELETE("3", "删除活动");

    private String oprTypeCode;
    private String oprTypeDesc;

    OprTypeEnum(String oprTypeCode, String oprTypeDesc) {
        this.oprTypeCode = oprTypeCode;
        this.oprTypeDesc = oprTypeDesc;
    }

    public String getOprTypeCode() {
        return oprTypeCode;
    }

    public void setOprTypeCode(String oprTypeCode) {
        this.oprTypeCode = oprTypeCode;
    }

    public String getOprTypeDesc() {
        return oprTypeDesc;
    }

    public void setOprTypeDesc(String oprTypeDesc) {
        this.oprTypeDesc = oprTypeDesc;
    }

    /**
     * 判断输入项属于那种枚举值
     *
     * @param value
     * @return cc.rengu.igas.momp.common.enums.QueryRoleEnum
     * @throws Exception 异常信息
     * @author Jinan Liu
     * @date 2020/5/18 14:53
     */
    public static OprTypeEnum getByValue(String value) {
        for (OprTypeEnum oprTypeEnum : values()) {
            if (oprTypeEnum.getOprTypeCode().equals(value)) {
                return oprTypeEnum;
            }
        }
        return null;
    }
}
